package com.btm.qiaoqiang.ruleadp;

/**
 * 自定义动态比较器，
 * 用户可以实现此接口并将实现对象提供给{@linkplain com.btm.qiaoqiang.ruleadp.parser.RuleExpressionParser 规则表达式解析器}，
 * 规则表达式在匹配的时候，会调用check(String, Object)方法进行比较
 */
public interface CustomDynamicComparator {

    /**
     * 检查给定的测试值，是否符合预期
     * @param expandValue 给定的检测属性在表达式中对应的期望值
     * @param actualValue 给定的被检测对象对应的属性的实际值
     * @return
     */
    boolean check(Object expandValue, Object actualValue);
}
